package com.killLog.common.page;

import java.util.List;

/**
查询数据的接口：负责执行查询
*/
public interface QueryAction<T> {
    /**
    执行查询的抽象方法
    */
    List<T> executeQuery();
}
/*原理❤️❤️
1、该接口是一个函数式接口（或抽象接口）：即只有一个抽象方法的接口 
2、具体实现由调用方提供（如匿名类、Lambda表达式或具体实现类），其中包含具体的数据库查询操作（如调用MyBatis的Mapper方法）。
3、在业务层实现类中直接通过：
 () -> userDao.findList(userDto)将实际的SQL语句传递了进来
   这是一个 Lambda 表达式，它实现了 QueryAction 接口的 executeQuery 方法。
4、  Lambda 匹配规则：
        () 对应 executeQuery() 方法的参数列表（无参数）。
        ->是Lambda 操作符，分隔参数和方法体。
        userDao.findList(userDto) 对应 executeQuery() 的方法体，即直接返回查询结果。
*/